package com.example.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.dto.CircuitDiagramDTO;
import com.example.entity.CircuitDiagram;
import com.example.vo.CircuitDiagramVO;

/**
 * 一次图结果业务逻辑层接口
 * 
 * @author system
 * @since 2024-01-01
 */
public interface CircuitDiagramService extends IService<CircuitDiagram> {
    
    /**
     * 分页查询一次图列表
     * 
     * @param page 分页参数
     * @param name 一次图名称（模糊查询）
     * @return 分页结果
     */
    IPage<CircuitDiagramVO> getPage(IPage<CircuitDiagram> page, String name);
    
    /**
     * 根据ID获取一次图详情
     * 
     * @param id 一次图ID
     * @return 一次图详情
     */
    CircuitDiagramVO getDetailById(String id);
    
    /**
     * 保存一次图
     * 
     * @param dto 一次图数据
     * @return 保存结果
     */
    boolean saveCircuitDiagram(CircuitDiagramDTO dto);
    
    /**
     * 更新一次图
     * 
     * @param dto 一次图数据
     * @return 更新结果
     */
    boolean updateCircuitDiagram(CircuitDiagramDTO dto);
    
    /**
     * 删除一次图
     * 
     * @param id 一次图ID
     * @return 删除结果
     */
    boolean deleteCircuitDiagram(String id);
} 